#ifndef _NEPTUNER_CBASE_VIEW_H
#define _NEPTUNER_CBASE_VIEW_H

#include<iostream>
#include<vector>

#include "Radar.h"
#include "Ark.h"

class CBaseView
{
public:
	std::ostream*	m_pxOut;
	Radar*			m_pxRadar;
	ScubaPack*		m_pxScubaPack;

	void generateHeader();
	void generateBody();
	void generateFooter();

	void printHeading(bool bClear=true);
	void printElement(bool bClear=true);
	void printFooting(bool bClear=true);
	void printBodyStart();
	void printBodyEnd();

	std::vector<std::string> m_asOutputRow;
	int m_nSerialNumber;

	CBaseView();
	~CBaseView();
};

#endif